1
เกินคำพูด: เข้าใจการแบ่งตัวหน่วยและทดสอบลูกอม
AI010Lesson 3
00:00

สถาปัตยกรรมที่ซ่อนอยู่ของภาษา

โมเดลภาษาขนาดใหญ่ (LLMs) ไม่ได้ 'อ่าน' ข้อความในแบบที่มนุษย์ทำ เราเห็นตัวอักษรและคำ แต่โมเดลประมวลผลข้อมูลเป็นชิ้นเล็ก ๆ ทางตัวเลขที่เรียกว่า ตัวหน่วยเข้าใจความเป็นนามธรรมนี้เป็นก้าวแรกสู่การเชี่ยวชาญการสร้างคำสั่ง (prompt engineering) และการออกแบบระบบ

การทดสอบลูกอม

ทำไมโมเดลถึงมีปัญหาในการกลับลำดับตัวอักษรในคำว่า "lollipop" แต่กลับสำเร็จทันทีเมื่อถูกขอให้กลับลำดับคำว่า "l-o-l-l-i-p-o-p"?

  • ปัญหาคือ:ในคำปกติ โมเดลเห็นเพียงตัวหน่วยเดียวที่แทนคำทั้งหมด มันไม่มีแผนที่ชัดเจนว่าตัวอักษรแต่ละตัวอยู่ภายในตัวหน่วยนั้นอย่างไร
  • แนวทางแก้ไขคือ:โดยการใส่เครื่องหมายลบระหว่างตัวอักษร คุณบังคับให้โมเดลแยกตัวอักษรแต่ละตัวเป็นตัวหน่วยเฉพาะ ซึ่งให้ภาพละเอียดที่จำเป็นต่อการดำเนินการตามงานนี้

หลักการสำคัญ

  • อัตราส่วนตัวหน่วย:โดยประมาณ 1 ตัวหน่วยเท่ากับตัวอักษร 4 ตัวในภาษาอังกฤษ หรือประมาณ 0.75 ของคำหนึ่งคำ
  • หน้าต่างบริบท:โมเดลมีขนาดหน่วยความจำคงที่ (เช่น 4096 ตัวหน่วย) ขีดจำกัดนี้รวมทั้งคำสั่งของคุณและคำตอบจากโมเดล
โมเดลเบื้องต้น กับ โมเดลที่ปรับแต่งตามคำสั่ง
  • โมเดลเบื้องต้น (Base LLMs):คาดการณ์คำถัดไปที่มีความน่าจะเป็นสูงที่สุดจากข้อมูลขนาดใหญ่ (เช่น คำถามว่า "เมืองหลวงของฝรั่งเศสคืออะไร?" อาจตามด้วย "เมืองหลวงของเยอรมนีคืออะไร?")
  • โมเดลที่ปรับแต่งตามคำสั่ง (Instruction-Tuned LLMs):ปรับแต่งอย่างละเอียดผ่านการเรียนรู้เสริมจากการตอบสนองจากมนุษย์ (RLHF) เพื่อปฏิบัติตามคำสั่งเฉพาะและทำงานเป็นผู้ช่วย
token_counter.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>
Question 1
If you are processing a document that is 3,000 English characters long, roughly how many tokens will the model consume?
A) 3,000 tokens
B) 750 tokens
C) 12,000 tokens
Question 2
Why is an Instruction-Tuned LLM preferred over a Base LLM for building a chatbot?
A) It is faster at generating text.
B) It uses fewer tokens.
C) It is trained to follow specific tasks and dialogue formats.
Challenge: Token Estimation
Apply the token ratio rule to a real-world scenario.
You are designing an automated summarization system. The system receives daily reports that average 10,000 characters in length.

Your API provider charges $0.002 per 1,000 tokens.
Step 1
Estimate the number of tokens for a single daily report.
Solution:
Using the rule of thumb (1 token ≈ 4 characters):
$$ \text{Tokens} = \frac{10,000}{4} = 2,500 \text{ tokens} $$
Step 2
Calculate the estimated cost to process one daily report.
Solution:
The cost is $0.002 per 1,000 tokens.
$$ \text{Cost} = \left( \frac{2,500}{1,000} \right) \times 0.002 = 2.5 \times 0.002 = \$0.005 $$